home *** CD-ROM | disk | FTP | other *** search
/ Chip: Internet / Chip Internet.iso / wwwutil / hotjava.ins / hotjava.exe / hotjava / classsrc / browser / ProgressDialog.java < prev    next >
Text File  |  1995-08-11  |  3KB  |  90 lines

  1. /*
  2.  * @(#)ProgressDialog.java    1.6 95/05/13 Chris Warth
  3.  *
  4.  * Copyright (c) 1995 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Permission to use, copy, modify, and distribute this software
  7.  * and its documentation for NON-COMMERCIAL purposes and without
  8.  * fee is hereby granted provided that this copyright notice
  9.  * appears in all copies. Please refer to the file "copyright.html"
  10.  * for further important copyright and licensing information.
  11.  *
  12.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
  13.  * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
  14.  * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  15.  * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
  16.  * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  17.  * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
  18.  */
  19. package browser;
  20.  
  21. import awt.*;
  22. import net.www.html.MeteredStream;
  23. import net.www.html.URL;
  24. import net.ProgressData; 
  25.  
  26. public class ProgressDialog extends Frame {
  27.     static ProgressWindow tw = null;
  28.     static String titleStr = hotjava.programName+" Progress";
  29.  
  30.     public ProgressDialog(Frame parent) {
  31.     super(parent.wServer, true, false, parent, 433, 215, Color.lightGray);
  32.  
  33.     setTitle(titleStr);
  34.     tw = new ProgressWindow(this, "Center", background, 300, 300);
  35.     }
  36.  
  37.     /*
  38.      * For testing purposes only.  It is private so it is only
  39.      * accessible from the demo method in this class.
  40.      */
  41.     private ProgressDialog(WServer server) {
  42.     super(server, true, false, null, 433, 215, Color.lightGray);
  43.  
  44.     setTitle(titleStr);
  45.     tw = new ProgressWindow(this, "Center", background, 300, 300);
  46.     }
  47.  
  48.  
  49.     public void demo() {
  50.     URL url = new URL(null, "http://somplace.org/file.html");
  51.     URL o2 = new URL(null, "http://somplaceelse.org/otherfile.html");
  52.  
  53.     URL.classInit();
  54.     ProgressData.pdata.register(url);
  55.     Thread.currentThread().sleep(5000);
  56.     ProgressData.pdata.register(o2);
  57.     Thread.currentThread().sleep(5000);
  58.     ProgressData.pdata.unregister(o2);
  59.     Thread.currentThread().sleep(7000);
  60.     ProgressData.pdata.connected(url);
  61.  
  62.     for (int i = 10; i < 1000; i += 50) {
  63.         ProgressData.pdata.update(url, i, 1000);
  64.         Thread.currentThread().sleep(200);
  65.     }
  66.     ProgressData.pdata.update(url,1000, 1000);
  67.     ProgressData.pdata.unregister(url);
  68.     }
  69.  
  70.     /*
  71.     This class can be tested independently of the rest of the browser.
  72.     just say 
  73.  
  74.         java -cs browser.ProgressDialog
  75.  
  76.     */
  77.     public static void main(String args[]) {
  78.     WServer server;
  79.     ProgressDialog tDialog = null;
  80.  
  81.     server = new WServer();
  82.     server.start();
  83.     tDialog = new ProgressDialog(server);
  84.     tDialog.map();
  85.     tDialog.resize();
  86.     tDialog.demo();
  87.     }
  88.  
  89. }
  90.